var pc;
// 立即执行函数，传入模块数组
!function(e){
   // 模块缓存对象
   var c = {}
   
   // 模块加载函数
   function n(t){
       // 检查模块是否已缓存
       if(c[t]) return c[t].exports;
       
       // 初始化新模块
       var r = c[t] = {
           i: t,       // 模块ID
           l: !1,      // 加载状态标记
           exports: {} // 模块导出对象
       };
       
       // 执行模块代码并填充exports
       e[t].call(r.exports, r.exports, n);
       
       // 标记模块为已加载
       r.l = !0;
       
       // 返回模块导出
       return r.exports;
   }
   
   // 将模块数组挂载到加载器
   n.m = e;
   
   // 启动应用，加载入口模块(索引2)
   pc=n
}([
    // 模块0 - 登录功能
    function () {
        console.log('负责登陆')
    },
    // 模块1 - 注册功能
    function () {
        console.log('负责注册') 
    },
    // 模块2 - 主入口模块
    function () {
        console.log('负责注册')
    }
])
pc(2)